Ext.ns('cn.hls.web.action.biz.member');
var memberForm = cn.hls.web.action.biz.member.memberForm;
 memberForm = function() {
	var uploadPanel,win;
   return { 
      init : function() {
    	$("#type").change(function(){
    		if($(this).val()==1){//驾驶员类型
    			$("#tr_driverLiceseNum").show();//驾驶证所在行显示
    			$("#tr_driverQuaCertNum").show();//驾驶员资格证所在行显示
    			$("#tr_superCargoNum").show();//押运员信息所在行显示
    			$("#sp_superCargo_font").hide();//押运员必填提示信息不显示
    			$("#tr_safetyOfficerNum").hide();//安管人员所在行隐藏
    			$("#tr_mainPersonResNum").hide();//主要负责人信息所在行隐藏
    			$("#tr_loadUnloadManNum").hide();//装卸员信息所在行隐藏
    			$("#driverType").attr("datatype","*");//准驾类型为必填
    			$("#tr_dirverType").show();//准驾类型项显示
    			$("#driverLiceseNum").attr("datatype","*");//驾驶员证设置必填
    			$("#dtdriverLiceseNumValidity").attr('datatype',"*");//驾驶员证有效期设置必填
    			$("#driverQuaCertNum").attr("datatype","*");//驾驶员资格证设置必填
    			$("#dtdriverQuaCertNumValidity").attr('datatype',"*");//驾驶员资格证有效期设置必填
    			$("#superCargoNum").removeAttr('datatype');//押运员设置非必填
    			$("#superCargoNum").removeClass("#input-text Validform_error");//取消验证样式
    			$("#dtsuperCargoNumValidity").removeAttr('datatype');//押运员资格证有效期设置非必填
    			$("#dtsuperCargoNumValidity").removeClass("#input-text Validform_error");//取消验证样式
    			$("#safetyOfficerNum").removeAttr('datatype');//安管人员资格证非必填
    			$("#dtsafetyOfficerNumValidity").removeAttr('datatype');//安管人员资格证非必填
    			$("#mainPersonResNum").removeAttr('datatype');//主要负责人资格证设置非必填
    			$("#dtmainPersonResNumValidity").removeAttr('datatype');//主要负责人资格证有效期设置非必填
    			$("#loadUnloadManNum").removeAttr('datatype');//装卸管理员资格证设置非必填
    			$("#dtloadUnloadManNumValidity").removeAttr('datatype');//装卸管理员资格证有效期设置非必填
    		}else if($(this).val()==2){//显示押运员信息
    			$("#tr_driverLiceseNum").hide();//驾驶证所在行隐藏
    			$("#tr_driverQuaCertNum").hide();//驾驶员资格证所在行隐藏
    			$("#tr_superCargoNum").show();//押运员信息所在行显示
    			$("#sp_superCargo_font").show();//押运员必填提示信息不显示
    			$("#tr_safetyOfficerNum").hide();//安管人员所在行隐藏
    			$("#tr_mainPersonResNum").hide();//主要负责人信息所在行隐藏
    			$("#tr_loadUnloadManNum").hide();//装卸员信息所在行隐藏
    			$("#driverLiceseNum").removeAttr("datatype");//驾驶员证设置非必填
    			$("#driverLiceseNum").val(undefined);//清空内容
    			$("#driverType").removeAttr('datatype');//准驾类型设置为非必填
    			$("#tr_dirverType").hide();//准驾类型项不显示
    			$("#dtdriverLiceseNumValidity").removeAttr('datatype');//驾驶员证有效期设置非必填
    			$("#dtdriverLiceseNumValidity").val(undefined);//清空内容
    			$("#driverQuaCertNum").removeAttr("datatype");//驾驶员资格证设置非必填
    			$("#driverQuaCertNum").val(undefined);//清空内容
    			$("#dtdriverQuaCertNumValidity").removeAttr('datatype');//驾驶员资格证有效期设置非必填
    			$("#dtdriverQuaCertNumValidity").val(undefined);//清空内容
    			$("#superCargoNum").attr('datatype',"*");//押运员设置非必填
    			$("#dtsuperCargoNumValidity").attr('datatype',"*");//押运员资格证有效期必填
    			$("#safetyOfficerNum").removeAttr('datatype');//安管人员资格证必填
    			$("#safetyOfficerNum").val(undefined);//清空内容
    			$("#dtsafetyOfficerNumValidity").removeAttr('datatype');//安管人员资格证非必填
    			$("#dtsafetyOfficerNumValidity").val(undefined);
    			$("#mainPersonResNum").removeAttr('datatype');//主要负责人资格证设置非必填
    			$("#mainPersonResNum").val(undefined);//清空内容原
    			$("#dtmainPersonResNumValidity").removeAttr('datatype');//主要负责人资格证有效期设置非必填
    			$("#dtmainPersonResNumValidity").val(undefined);
    			$("#loadUnloadManNum").removeAttr('datatype');//装卸管理员资格证设置非必填
    			$("#loadUnloadManNum").val(undefined);//清空内容
    			$("#dtloadUnloadManNumValidity").removeAttr('datatype');//装卸管理员资格证有效期设置非必填
    			$("#dtloadUnloadManNumValidity").val(undefined);//清空内容
    		}else if($(this).val()==3){//安管人员信息
    			$("#tr_driverLiceseNum").hide();//驾驶证所在行隐藏
    			$("#tr_driverQuaCertNum").hide();//驾驶员资格证所在行隐藏
    			$("#tr_superCargoNum").hide();//押运员信息所在行隐藏
    			$("#tr_safetyOfficerNum").show();//安管人员所在行显示
    			$("#tr_mainPersonResNum").hide();//主要负责人信息所在行隐藏
    			$("#tr_loadUnloadManNum").hide();//装卸员信息所在行隐藏
    			$("#driverLiceseNum").removeAttr("datatype");//驾驶员证设置非必填
    			$("#driverLiceseNum").val(undefined);//清空内容
    			$("#dtdriverLiceseNumValidity").removeAttr('datatype');//驾驶员证有效期设置非必填
    			$("#dtdriverLiceseNumValidity").val(undefined);//清空内容
    			$("#driverQuaCertNum").removeAttr("datatype");//驾驶员资格证设置非必填
    			$("#driverQuaCertNum").val(undefined);//清空内容
    			$("#dtdriverQuaCertNumValidity").removeAttr('datatype');//驾驶员资格证有效期设置非必填
    			$("#driverType").removeAttr('datatype');//准驾类型设置为非必填
    			$("#tr_dirverType").hide();//准驾类型项不显示
    			$("#dtdriverQuaCertNumValidity").val(undefined);//清空内容
    			$("#superCargoNum").removeAttr('datatype');//押运员设置非必填
    			$("#superCargoNum").val(undefined);//清空内容
    			$("#dtsuperCargoNumValidity").removeAttr('datatype');//押运员资格证非必填
    			$("#dtsuperCargoNumValidity").val(undefined);//清空内容
    			$("#safetyOfficerNum").attr('datatype',"*");//安管人员资格证非必填
    			$("#dtsafetyOfficerNumValidity").attr('datatype',"*");//安管人员资格证必填
    			$("#mainPersonResNum").removeAttr('datatype');//主要负责人资格证设置必填
    			$("#mainPersonResNum").val(undefined);//清空内容
    			$("#dtmainPersonResNumValidity").removeAttr('datatype');//主要负责人资格证有效期设置非必填
    			$("#dtmainPersonResNumValidity").val(undefined);
    			$("#loadUnloadManNum").removeAttr('datatype');//装卸管理员资格证设置非必填
    			$("#loadUnloadManNum").val(undefined);//清空内容
    			$("#dtloadUnloadManNumValidity").removeAttr('datatype');//装卸管理员资格证有效期设置非必填
    			$("#dtloadUnloadManNumValidity").val(undefined);//清空内容
    		}else if($(this).val()==4){//主要主负责人资格证
    			$("#tr_driverLiceseNum").hide();//驾驶证所在行隐藏
    			$("#tr_driverQuaCertNum").hide();//驾驶员资格证所在行隐藏
    			$("#tr_superCargoNum").hide();//押运员信息所在行隐藏
    			$("#tr_safetyOfficerNum").hide();//安管人员所在行显示
    			$("#tr_mainPersonResNum").hide();//主要负责人信息所在行隐藏
    			$("#tr_loadUnloadManNum").show();//装卸员信息所在行隐藏
    			$("#driverLiceseNum").removeAttr("datatype");//驾驶员证设置非必填
    			$("#driverLiceseNum").val(undefined);//清空内容
    			$("#dtdriverLiceseNumValidity").removeAttr('datatype');//驾驶员证有效期设置非必填
    			$("#dtdriverLiceseNumValidity").val(undefined);//清空内容
    			$("#driverQuaCertNum").removeAttr("datatype");//驾驶员资格证设置非必填
    			$("#driverQuaCertNum").val(undefined);//清空内容
    			$("#dtdriverQuaCertNumValidity").removeAttr('datatype');//驾驶员资格证有效期设置非必填
    			$("#dtdriverQuaCertNumValidity").val(undefined);//清空内容
    			$("#driverType").removeAttr('datatype');//准驾类型设置为非必填
    			$("#tr_dirverType").hide();//准驾类型项不显示
    			$("#superCargoNum").removeAttr('datatype');//押运员设置非必填
    			$("#superCargoNum").val(undefined);//清空内容
    			$("#dtsuperCargoNumValidity").removeAttr('datatype');//押运员资格证非必填
    			$("#dtsuperCargoNumValidity").val(undefined);//清空内容
    			$("#safetyOfficerNum").removeAttr('datatype');//安管人员资格证非必填
    			$("#safetyOfficerNum").val(undefined);//清空内容
    			$("#dtsafetyOfficerNumValidity").attr('datatype');//安管人员资格证必填
    			$("#dtsafetyOfficerNumValidity").val(undefined);//清空内容
    			$("#mainPersonResNum").removeAttr('datatype');//主要负责人资格证设置非必填
    			$("#mainPersonResNum").val(undefined);//清空内容
    			$("#dtmainPersonResNumValidity").removeAttr('datatype');//主要负责人资格证有效期设置非必填
    			$("#dtmainPersonResNumValidity").val(undefined);//清空内容
    			$("#loadUnloadManNum").attr('datatype',"*");//装卸管理员资格证设置必填
    			$("#dtloadUnloadManNumValidity").attr('datatype',"*");//装卸管理员资格证有效期设置必填
    		}else if($(this).val()==5){//装卸管理员信息
    			$("#tr_driverLiceseNum").hide();//驾驶证所在行隐藏
    			$("#tr_driverQuaCertNum").hide();//驾驶员资格证所在行隐藏
    			$("#tr_superCargoNum").hide();//押运员信息所在行隐藏
    			$("#tr_safetyOfficerNum").hide();//安管人员所在行显示
    			$("#tr_mainPersonResNum").show();//主要负责人信息所在行隐藏
    			$("#tr_loadUnloadManNum").hide();//装卸员信息所在行隐藏
    			$("#driverLiceseNum").removeAttr("datatype");//驾驶员证设置非必填
    			$("#driverLiceseNum").val(undefined);//清空内容
    			$("#dtdriverLiceseNumValidity").removeAttr('datatype');//驾驶员证有效期设置非必填
    			$("#dtdriverLiceseNumValidity").val(undefined);//清空内容
    			$("#driverQuaCertNum").removeAttr("datatype");//驾驶员资格证设置非必填
    			$("#driverQuaCertNum").val(undefined);//清空内容
    			$("#driverType").removeAttr('datatype');//准驾类型设置为非必填
    			$("#tr_dirverType").hide();//准驾类型项不显示
    			$("#dtdriverQuaCertNumValidity").removeAttr('datatype');//驾驶员资格证有效期设置非必填
    			$("#superCargoNum").removeAttr('datatype');//押运员设置非必填
    			$("#superCargoNum").val(undefined);//清空内容
    			$("#dtsuperCargoNumValidity").removeAttr('datatype');//押运员资格证非必填
    			$("#dtsuperCargoNumValidity").val(undefined);//清空内容
    			$("#safetyOfficerNum").removeAttr('datatype');//安管人员资格证非必填
    			$("#safetyOfficerNum").val(undefined);//清空内容
    			$("#dtsafetyOfficerNumValidity").removeAttr('datatype');//安管人员资格证非必填
    			$("#dtsafetyOfficerNumValidity").val(undefined);//清空内容
    			$("#mainPersonResNum").attr('datatype',"*");//主要负责人资格证设置必填
    			$("#dtmainPersonResNumValidity").attr('datatype',"*");//主要负责人资格证有效期设置必填
    			$("#loadUnloadManNum").removeAttr('datatype');//装卸管理员资格证设置非必填
    			$("#loadUnloadManNum").val(undefined);//清空内容
    			$("#dtloadUnloadManNumValidity").removeAttr('datatype');//装卸管理员资格证有效期设置非必填
    			$("#dtloadUnloadManNumValidity").val(undefined);//清空内容
    		}
    	})
    	this.initRender();
      },
      /**企业基本信息下拉框 store**/
      createCompanyStore:function(){
     	 return new Ext.data.Store({
     		 	autoLoad:true,//自动加载   
 				proxy : new Ext.data.HttpProxy({ url : cfg.cxt+'/company/loadCompany.action?type=1' }),
 				reader : new Ext.data.JsonReader({idProperty : 'id'},
 				["id","name"]),
 				listeners : { 
 					loadexception : bangni.storeLoadError
 				}
 			});
      },
      ajaxFileUpload:function(){
    	  var filepath =$("#photoFile").val();
    		 var extStart = filepath.lastIndexOf(".");
    	     var ext = filepath.substring(extStart, filepath.length).toUpperCase();
    	     if (ext != ".BMP" && ext != ".PNG" && ext != ".GIF" && ext != ".JPG" && ext != ".JPEG"){
    	    	 Ext.Mytip.msg('提示','文件格式不正确,请允许上传后辍名为bmp、gif、png、jpg、jpeg的文件!');
    	    	 return;
    	     }else{
    	    	 var size=document.getElementById("photoFile").files[0].size;
    	    	 if(size>3*1024*1024){//最大不能超过3M
    	    		// alert("上传文件超过规定大小!");
    	    		 Ext.Mytip.msg('提示','上传文件超过规定3M大小!');
    	    		 return;
    	    	 }
    	     }
    	     $.ajaxFileUpload({  
    	         url: cfg.cxt+'/upload/uploadFile.action', 
    	         secureuri: false,  
    	         fileElementId: 'photoFile',  
    	         dataType: 'json', //这里修改为content  
    	         data:{"photo":$("#hid_photo").val()},
    	         success: function (data) {  
    	        	 if(data.status==200){
    	        	   //alert("文件传成功");
    	        	   Ext.Mytip.msg('提示','文件传成功!');
    	        	   $("#img_photo").attr('src',cfg.cxt+"/upload/"+data.info);
    	        	   $("#hid_photo").val(data.info);
    	           }else{
    	        	   Ext.Mytip.msg('提示','文件上传失败!');
    	           }
    	         },  
    	                   
    	         error: function (data, status, e) {  
    	            //alert(e);  
    	            Ext.Mytip.msg('提示','文件上传失败，原因:'+e);
    	         }  
    	       }  
    	     )  
      },
      createUploadWin:function(){
    	  if(!uploadPanel){
    		  memberForm.createUploadPanel();
    	  }
    	  if(!win){
    		  win = new ExtWin({
    			width : 300,
  				height : 150,
  				title : '<div class="panelTitleCss">个人照片上传</div>',
    		  	items:[uploadPanel],
    		  	buttons : [{
					text : '保存',
					id:"btn_Save",
					iconCls : 'acceptIcon',
					handler : function() {
						memberForm.ajaxFileUpload();
						$("#photo").hide();
						win.hide();
					}
    		  	},{
					text : '关闭',
					iconCls : 'deleteIcon',
					handler : function() {
						win.hide();
					}
				}]
    		  });
    	  }
    	  win.show();
      },
      createUploadPanel:function(){
    	  uploadPanel=new Ext.Panel({
    		  layout : 'fit',
    		  items: [{
		        	padding : 5,
					bodyStyle:'overflow-y:auto;overflow-x:hidden;',
					contentEl : 'photoFile'
		        }]
    	  });
    	  return uploadPanel;
      },
		
      initRender: function(){
    	var birthDay=Ext.get('hid_birthDay').dom.value;//出生日期
    	var driverLiceseNumValidity=Ext.get('hid_driverLiceseNumValidity').dom.value;//驾驶员证有效期
     	var driverQuaCertNumValidity=Ext.get('hid_driverQuaCertNumValidity').dom.value;//驾驶证资格证有效期
     	var superCargoNumValidity=Ext.get('hid_superCargoNumValidity').dom.value;//押运员资格证有效期
     	var safetyOfficerNumValidity=Ext.get('hid_safetyOfficerNumValidity').dom.value;//安管员资格证有效期
     	var mainPersonResNumValidity=Ext.get('hid_mainPersonResNumValidity').dom.value;//主要负责人资格证有效期
     	var loadUnloadManNumValidity=Ext.get('hid_loadUnloadManNumValidity').dom.value;//装卸员资格证有效期
     	new Ext.Button({
            text : '上传文件',
            renderTo : 'photo_div',
            handler : function() {
            	$("#photoFile").val('');
            	$("#photoFile").show();
            	 memberForm.createUploadWin();
            }
         });
     	//出生日期
          new Ext.form.DateField({
 				id : 'dtbirthDay',
 				width : 170,
 				editable : true,
 				format : "Y-m-d",
 				name : 'birthDay',
 				renderTo : 'birthDay',
 				allowBlank : true,
 				value:Ext.isEmpty(birthDay)?new Date():new Date(birthDay.substr(0,10))
 			});
         　　　//驾驶证有效期
          new Ext.form.DateField({
				id : 'dtdriverLiceseNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'driverLiceseNumValidity',
				renderTo : 'sp_driverLiceseNumValidity',
				allowBlank : true,
				value:Ext.isEmpty(driverLiceseNumValidity)?undefined:new Date(driverLiceseNumValidity.substr(0,10))
			});
          //驾驶员资格证号有效期
          new Ext.form.DateField({
				id : 'dtdriverQuaCertNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'driverQuaCertNumValidity',
				renderTo : 'sp_driverQuaCertNumValidity',
				allowBlank : false,
				value:Ext.isEmpty(driverQuaCertNumValidity)?undefined:new Date(driverQuaCertNumValidity.substr(0,10))
			});
          //押运员资格证有效期
          new Ext.form.DateField({
				id : 'dtsuperCargoNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'superCargoNumValidity',
				renderTo : 'sp_superCargoNumValidity',
				allowBlank : false,
				value:Ext.isEmpty(superCargoNumValidity)?undefined:new Date(superCargoNumValidity.substr(0,10))
			});
          //安管人员资格证有效期
          new Ext.form.DateField({
				id : 'dtsafetyOfficerNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'safetyOfficerNumValidity',
				renderTo : 'sp_safetyOfficerNumValidity',
				allowBlank : false,
				value:Ext.isEmpty(safetyOfficerNumValidity)?undefined:new Date(safetyOfficerNumValidity.substr(0,10))
			});
          //主要负责人资格证有效
          new Ext.form.DateField({
				id : 'dtmainPersonResNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'mainPersonResNumValidity',
				renderTo : 'sp_mainPersonResNumValidity',
				allowBlank : false,
				value:Ext.isEmpty(mainPersonResNumValidity)?undefined:new Date(mainPersonResNumValidity.substr(0,10))
			});
          //装卸员资格证有效
          new Ext.form.DateField({
				id : 'dtloadUnloadManNumValidity',
				width : 170,
				editable : true,
				format : "Y-m-d",
				name : 'loadUnloadManNumValidity',
				renderTo : 'sp_loadUnloadManNumValidity',
				allowBlank : false,
				value:Ext.isEmpty(loadUnloadManNumValidity)?undefined:new Date(loadUnloadManNumValidity.substr(0,10))
			});
          
    	  new Ext.form.ComboBox({ //默认过滤参数名为query     
              store: memberForm.createCompanyStore(),    
              hiddenName:'company.name',
              id:'copmpany',
              width : 200,
              mode : 'local', //设置为local,则加载的本地数据     
              typeAheadDelay:250,//默认延时查询250     
              triggerAction : 'all', //每次下拉均显示全部选项       
              selectOnFocus:true,
              forceSelection: true,// 用户必须点击选择不能随意输入  
              typeAhead: true,// 自动提示并补充列出相似的选项  
              valueField : 'id', //下拉框显示信息对应的值     
              displayField : 'name', //下拉框显示信息     
              loadingText : '正在加载信息',      
              selectOnFocus : true, //用户不能自己输入,只能选择列表中有的记录     
              minChars:2,  //设置填充几个字节就去查一次,默认为4个字节      
              renderTo : 'sp_company',
              listeners:{'select':function(combo,record,index){
            	   $("#companyId").val(record.data.id);
             }
    	  }
    	  });
	      $("#company").attr('datatype',"*");
	      //编辑时设置下拉框的默认值
	      if($("#companyId").val()!=''){
	    	  var shortName=$("#copmanyName").val();
	    	  $("#copmpany").val(shortName);//下拉框设置值
	      }
      }
   }
}();
Ext.onReady(memberForm.init, memberForm);
 